package cn.terminus.client.customer.contractinfo.result;

import cn.terminus.client.customer.customcontacts.result.CustomContactsResult;
import cn.terminus.client.customer.custompurposeroom.result.RoomDetailResult;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;
import java.util.List;

/**
 * ContractInfoResult
 *
 * @author makejava
 * @since 2021-07-21 11:01:03
 */
@Data
public class ContractInfoResult implements Serializable {
    private static final long serialVersionUID = -73838413261501328L;
    /**
     * ID
     */
    private Long id;
    /**
     * 合同编号
     */
    private String code;
    /**
     * 合同签订日期
     */
    private LocalDate signTime;
    /**
     * 合同开始时间
     */
    private LocalDate effectiveBeginTime;
    /**
     * 合同结束时间
     */
    private LocalDate effectiveEndTime;
    /**
     * 计算精度code
     */
    private String precisionCode;
    /**
     * 合同标签code,号分割
     */
    private String labelCode;
    /**
     * 租客id
     */
    private Long customerId;
    /**
     * 合同签单人姓名
     */
    private String contractSigner;
    /**
     * 合同签单人电话
     */
    private String contractSignerPhone;
    /**
     * 押金
     */
    private BigDecimal deposit;
    /**
     * 押金字典单位编码
     */
    private String depositUnitCode;
    /**
     * 交付日期
     */
    private LocalDate deliverTime;
    /**
     * 办证日期
     */
    private Integer certificateNumber;
    /**
     * 办证日期单位code 工作日/自然日
     */
    private String certificateUnitCode;
    /**
     * 违约金
     */
    private BigDecimal violation;
    /**
     * 违约金单位编码
     */
    private String violationUnitCode;
    /**
     * 合同类型 1租 2销售
     */
    private Integer type;
    /**
     * 合同状态 1正常 2删除
     */
    private Integer status;
    /**
     * create_user
     */
    private String createUser;
    /**
     * create_time
     */
    private Date createTime;
    /**
     * last_update_user
     */
    private String lastUpdateUser;
    /**
     * last_update_time
     */
    private Date lastUpdateTime;

    /**
     * 客户名称
     */
    private String customerName;
    /**
     * 客户联系人
     */
    private List<CustomContactsResult> customContactsResultList;

    /**
     * 项目信息
     */
    private List<String> projectName;

    @ApiModelProperty(name = "roomDetailResults", value = "房源", required = true)
    private List<RoomDetailResult> roomDetailResults;

    /**
     * 房源信息字符串
     */
    private List<String> purposeRoomStr;

    /**
     * 建筑面积
     */
    private BigDecimal cboArea;


}
